1. Field of the Invention
The present invention relates to a design rule check with which whether mask pattern data is correctly designed in accordance with a pertinent design standard is inspected in the manufacture of a semiconductor integrated circuit and the like and, more particularly, to a design rule check method of determining and outputting a design rule check error and using it in correction of mask pattern data and the like.
2. Description of the Prior Art
In the manufacture of the semiconductor integrated circuit, whether or not the fabricated mask pattern complies with a predetermined design rule must be inspected prior to the actual manufacture of the semiconductor integrated circuit. In this case, when one design standard is present at one portion of mask pattern data, an error that does not satisfy this design standard is output directly. When a plurality of design standards are present at one portion of mask pattern data, a plurality of errors not satisfying these design standards are output in contention, and it is difficult to obtain a correct inspection result. FIG. 1A shows such an example wherein a plurality of design standards are present at one portion of the mask pattern data. This example will be described by means of the regulation value of the spacing of wiring data 201 around the bonding pad. FIG. 1B shows that wiring data 201 are classified by a bonding pad portion 303 into a wiring line 301 of the pad portion and a wiring line 302 outside the pad portion.
Referring to FIGS. 1A and 1B, pad opening data 202 is part of mask pattern data that constitutes the bonding pad. The bonding pad portion 303 is constituted by forming the pad opening data 202 on the wiring data 201. The wiring data 201 inside the bonding pad portion 303 is classified into the wiring line 301 of the pad portion, and the wiring data 201 outside the bonding pad portion 303 is classified into the wiring line 302 outside the pad portion, respectively. In the design standard on the wiring data 201 around the bonding pad, the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion usually has a regulation value R.sub.B 204. When mask pattern data including a wiring line 302 outside the pad portion around the bonding pad is arranged at a high density, the spacing has a regulation value R.sub.A 203. The regulation value R.sub.A 203 is smaller than the regulation value R.sub.B 204. In other words, regulation value R.sub.A 203&lt;regulation value R.sub.B 204.
Based on this design standard example, conventional design rule check methods employed when a plurality of design standards are present at one portion and a plurality of errors contend will be described. Conventionally, three methods are proposed.
The first conventional method has a region data preparation process 502, a data division process 504, a design rule check process 507, and a design rule check process 509, as shown in FIG. 2. The region data preparation process 502 inputs mask pattern data 501 and outputs region data 503. The data division process 504 inputs the mask pattern data 501 and the region data 503 and outputs division data 505. The design rule check process 507 inputs and checks a design standard A 506 storing a design rule consisting of a regulation value R.sub.A 203 as the regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion, and the division data 505. The design rule check process 507 outputs the check result to a design rule check result 510. The design rule check process 509 inputs and checks a design standard B 508 storing a design rule consisting of a regulation value R.sub.B 204 as another regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion, and the division data 505. The design rule check process 509 outputs the check result to the design rule check result 510.
FIG. 3 shows an example of the mask pattern data stored in the mask pattern data 501. The spacing between the wiring data 201 inside the bonding pad portion 303 and the wiring data 201 outside the bonding pad portion 303 includes a design value D.sub.A 601 and a design value D.sub.B 602. The design value D.sub.A 601 is smaller than the regulation value R.sub.A 203 mentioned in the design standard example (design value D.sub.A 601&lt;regulation value R.sub.A 203). The design value D.sub.B 602 is larger than the regulation value R.sub.A 203 and smaller than the regulation value R.sub.B 204 (regulation value R.sub.A 203&lt;design value D.sub.B 602&lt;regulation value R.sub.B 204).
According to the first conventional method, first, the pad opening data 202 used for constituting the bonding pad is input from the mask pattern data 501 to the region data preparation process 502. As shown in FIG. 4, a thickening process 701 for the pad opening data 202 is performed by using a graphic operation process to prepare a pad region 702, and the pad region 702 is output to the region data 503. Subsequently, the wiring line 301 and wiring line 302 are output to the division data 505. The wiring line 301 of the pad portion is prepared by obtaining, by using a graphic operation process, the OR of the region data 503 and wiring data 201. The wiring line 302 outside the pad portion is prepared by obtaining, by using a graphic operation process, the exclusive OR of the wiring data 201 and region data 503. The wiring data 201 has been input to the data division process 504 from the mask pattern data 501. The pad region 702 has been input to the data division process 504 from the region data 503.
The design rule check process 507 will be described by means of the case of a design rule consisting of the regulation value R.sub.A 203 stored in the design standard A 506 as the regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion, the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion which are stored in the division data 505. As shown in FIG. 5, side data (a side A 801 and a side B 802) of a portion where the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion becomes smaller than the regulation value R.sub.A 203 is obtained. Polygon data obtained by connecting the vertices of the pair of side A 801 and side B 802 is output to the design rule check result 510 as a design rule check error (an error A 901).
In the design rule check process 509, a process similar to the design rule check process 507 described above is performed except for the design standard B 508 that stores a design rule consisting of a regulation value R.sub.B 204 as another regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion. As shown in FIG. 5, side data (the side A 801 and side B 802, a side C 803, and a side D 804) of portions where the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion becomes smaller than the regulation value regulation value R.sub.B 204 are obtained. Polygon data obtained by connecting the vertices of the pair of side A 801 and side B 802 and the pair of side C 803 and side D 804 is output to the design rule check result 510 as a design rule check error (an error B 902 and an error B 903).
FIG. 6 shows an example of a design rule error which is output to the design rule check result 510, as described above. The error A 901 indicates a design rule error which is output in the design rule check process 507, and the error B 902 and error B 903 indicate design rule errors that are output in the design rule check process 509. FIGS. 7A and 7B describe the content of the design rule errors shown in FIG. 6, in which FIG. 7A shows a design rule error (the error A 901) defined by the regulation value R.sub.A 203 as the regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion, and FIG. 7B shows design rule errors (the error B 902 and error B 903) defined by the regulation value R.sub.B 204 as another regulation value of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the wiring line 302.
Determination as to whether the design rule check error output to the design rule check result 510 is a true error or a pseudo-error is conventionally performed manually through comparison and reference of the design standard example described above, the mask pattern example shown in FIG. 4, and the design rule check result 510 (FIGS. 7A and 7B). From the example of the mask pattern shown in FIG. 3, the error A 901 can be determined as a true error since the spacing between the side A 801 and side B 802 shown in FIG. 5 is the design value D.sub.A 601, which is smaller than the regulation value R.sub.A 203. The error B 903 can be determined as a true error since the spacing between the side C 803 and side D 804 shown in FIG. 7 is the design value D.sub.B 602, which is smaller than the regulation value R.sub.B 204. Regarding the error B 902, it should be dealt with as a true error since the spacing between the side A 801 and side B 802 shown in FIG. 7 is the design value D.sub.A 601, which is smaller than the regulation value R.sub.B 204. However, since the error B 902 recurs at the same portion (the side A 801 and side B 802) where the error A 901 which is determined as a true error occurred. Also, the error portion on the mask pattern can be specified by the error A 901 described above. Thus, the error B 902 need not be handled as a true error and is determined as a kind of pseudo-error.
The second conventional method has a check operation control unit 1201 for receiving data from an input unit 1202, a design standard file 1204, and mask pattern data 1203, for receiving/outputting a process file 1205 and a pseudo-error registration file 1207, and for outputting a design rule check result 1206, as shown in FIG. 8. For a reference, see, e.g., Japanese Unexamined Patent Publication No. 4-36866. The second conventional method will be described under the following assumption, in the same manner as the first conventional method. Namely, assume that the mask pattern data 1203 stores the mask pattern data shown in FIG. 4, and that the design standard file 1204 stores a design rule consisting of a regulation value R.sub.A 203 and regulation value R.sub.B 204 as the regulation values of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion which are described in the design standard example.
In the initial design rule check, a process similar to the design rule check method of the first conventional method is performed by the check operation control unit 1201, and a design rule check error is output to the process file 1205. In this initial design rule check, the pseudo-error registration file 1207 is not specified. Therefore, the content of the process file 1205 is directly output to the design rule check result 1206. Subsequently, whether the design rule check error output to the design rule check result 1206 is a true error or a pseudo-error is manually determined. Regarding a design rule check error which is determined as a pseudo-error (for example, the error B 902 shown in FIGS. 6 and 7B), the content of this pseudo-error is manually written and registered in the pseudo-error registration file 1207 by the input unit 1202. If a design rule error is determined as a true error (for example, the error A 901 shown in FIGS. 6 and 7A), the mask pattern data is corrected manually.
In the second design rule check, the mask pattern data whose true error is corrected in the initial design rule check is stored in the mask pattern data 1203. The pseudo-error registration file 1207 in which registration is performed in the initial design rule check is specified. A process similar to the first conventional design rule check method is performed by the check operation control unit 1201, and a design rule check error is output to the process file 1205. Since the pseudo-error registration file 1207 is specified, the check operation control unit 1201 outputs, to the design rule check result 1206, a design rule check error obtained by removing the content registered in the pseudo-error registration file 1207 from the process file 1205.
Regarding the true error that occurred in the initial design rule check, if the mask pattern data is corrected correctly, the design rule check error output to the process file 1205 in the second design rule check does not include a true error, but includes a pseudo-error identical to the pseudo-error registered in the pseudo-error registration file 1207 in the initial design rule check. Hence, in the second design rule check, a design rule check result 1206 free from a pseudo-error that occurred in the initial design rule check can be obtained.
The third conventional method has a design rule check process 1503 for receiving mask pattern data 1501 and a design standard file 1502 and outputting a design rule check error to a work file 1504, and a pseudo-error determination process 1505 for receiving the mask pattern data 1501 and the work file 1504 and outputting a design rule check error to a design rule check result 1506, as shown in FIG. 9. For a reference, see, e.g., see Japanese Patent Application No. 7-193547. The operation of the third conventional method will be described under the following assumption, in the same manner as in the first conventional method. Namely, assume that the mask pattern data 1501 stores the mask pattern data shown in FIG. 3, and that the design standard file 1502 stores a design rule consisting of a regulation value R.sub.A 203 and regulation value R.sub.B 204 as the regulation values of the spacing between the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion which are described in the design standard example.
The design rule check process 1503 performs a process similar to the design rule check process 507 and design rule check process 509 described in the first conventional method for the wiring line 301 of the pad portion and the wiring line 302 outside the pad portion to obtain a design rule check error (e.g., the error A 901, the error B 902, and the error B 903 shown in FIG. 6), and outputs the obtained design rule check error to the work file 1504. The pseudo-error determination process 1505 reads the design rule check error stored in the work file 1504 as graphic data, and checks whether or not this design rule check error overlaps the mask pattern data stored in the mask pattern data 1501 in accordance with a graphic operation process. A true error and a pseudo-error are determined among the design rule check errors (e.g., the error A 901, the error B 902, and the error B 903 shown in FIG. 6) in accordance with whether or not this overlap is present. Only a true error is output to the design rule check result 1506, so that a design rule check result 1506 free from a pseudo-error can be obtained.
The first to third conventional methods have problems as follows. In the first conventional design rule check method, whether a design rule check error which recurs at one portion is a true error or a kind of pseudo-error is manually determined. The time required for making manual discrimination between a true error and a pseudo-error becomes necessary for the number of design rule check errors that recur, and a determination error can occur due to a human factor.
According to the second conventional design rule check method, a pseudo-error occurring in the initial design rule check is registered and is removed in the second design rule check. Occurrence of a pseudo-error cannot be prevented with one design rule check, and design rule checks are required at least twice. Assume that, in the second design rule check, the wiring data 204 in which a true error has been corrected in the initial design rule check and in which a pseudo-error occurred in the initial design rule check, is corrected (1302) to provide wiring data 1301, and that the resultant mask pattern data is stored in the layout file or mask pattern data 1203 to perform the second design rule check. In this case, the pseudo-error (e.g., the error B 902 shown in FIGS. 6 and 7B) occurring in the initial design rule check and the design rule check error occurring in the second design rule check (e.g., a pseudo-error 1401 shown in FIG. 11) do not coincide. Therefore, the pseudo-error registered in the pseudo-error registration file 1207 is not removed from the design rule check error output to the process file 1205 in the second design rule check, but is output to the design rule check result 1206 as pseudo-error data 1401. Occurrence of pseudo-errors cannot thus be prevented. Whether a design rule check error which recurs at one portion is a true error or a kind of pseudo-error must be manually determined. A time required for making manual determination between a true error and a pseudo-error becomes necessary for the number of design rule check errors that recur, and a determination error can occur due to a human factor, in the same manner as in the first conventional method.
According to the third conventional design rule check method, in the pseudo-error determination process 1505, a pseudo-error is determined by checking whether a design rule check error and the mask pattern data 1501 overlap or not. For example, since the error A 901 and error B 902 shown in FIG. 6 occur at the same portion, they are dealt with equivalently in this determination. In the process which determines the error A 901 as a true error, the error B 902 which should be determined as a pseudo-error is also erroneously determined as a true error and is output to the design rule check result 1506, so that occurrence of pseudo-errors cannot be prevented. Whether a design rule check error which recurs at one portion is a true error or a kind of pseudo-error must be manually determined. The time required for making manual discrimination between a true error and a pseudo-error becomes necessary for the number of design rule check errors that recur, and a determination error can occur due to a human factor, in the same manner as in the conventional methods described above.